# -*- coding: utf-8 -*-
# flake8: noqa
from qiniu import Auth, put_file, etag, put_data
import qiniu.config
#需要填写你的 Access Key 和 Secret Key
access_key = 'MoamrsLLxen2nJZUhOtSWz9wIe4HtO-C-0RdgsRE'
secret_key = '3_QYLD3NuDKhpk9aUEdeI_QE_Mh_gBCmnZOU0zFC'

def image_storage(f1):
    #构建鉴权对象
    q = Auth(access_key, secret_key)
    #要上传的空间
    bucket_name = 'chenlin_p11'
    #上传后保存的文件名
    key = None                    # 如果使用put_data方法来上传图片,那么图片的名字可以为None来让七牛云自定义名字
    #生成上传 Token，可以指定过期时间等
    token = q.upload_token(bucket_name, key, 3600)
    #要上传文件的本地路径
    # localfile = f1
    ret, info = put_data(token, key, f1)

    # 如果上传成功之后返回图片的名字
    if info.status_code == 200:
        # status_code == 200 的话代表上传成功的状态码,
        return ret.get("key")
    # 取得ret的key值"key得到它的value值就是图片的名字
    else:
        return None
    # print(info)
    # print(ret)

if __name__ == '__main__':
    with open('./123.jpg', 'rb') as f:
        image_name = image_storage(f.read())
        print(image_name)
